package com.example.news.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.news.pojo.entity.User;
import com.example.news.pojo.form.*;
import com.example.news.pojo.vo.LoginVo;
import com.example.news.utils.result.Result;

public interface AuthService extends IService<User> {
    Result<String> userRegister(RegisterForm registerForm);

    Result<LoginVo> userLogin(LoginForm loginForm);

    Result<LoginVo> userLoginByEmail(EmailLoginForm emailLoginForm);

    Result<String> getLoginCaptcha(String email);

    Result<String> getRegisterCaptcha(String email);

    Result<String> changeUserPassword(ChangePwdForm changePwdForm);

    Result<String> getChangePwdCaptcha(String email);

    Result<String> changeUserPwdByEmail(ChangePwdByEmailForm changePwdByEmailForm);
}
